/*
 * Created on 29.11.2003
 */
package de.javakicker;

import java.awt.Point;

/**
 * The Interface RuntimePlayer.
 *
 * @author Till Krullmann
 */
public interface RuntimePlayer
{
	
	/**
	 * Gets the team.
	 *
	 * @return the team
	 */
	Team getTeam();

	/**
	 * Gets the player.
	 *
	 * @return the player
	 */
	Player getPlayer();
	
	/**
	 * Gets the java kicker id.
	 *
	 * @return the java kicker id
	 */
	String getJavaKickerId();
	
	/**
	 * Gets the player name.
	 *
	 * @return the player name
	 */
	String getPlayerName();
	
	/**
	 * Gets the player id.
	 *
	 * @return the player id
	 */
	String getPlayerId();

	/**
	 * Gets the position.
	 *
	 * @return the position
	 */
	Point getPosition();
	
	/**
	 * Sets the position.
	 *
	 * @param pos the new position
	 */
	void setPosition(Point pos);

	/**
	 * Gets the comment.
	 *
	 * @return the comment
	 */
	String getComment();

	/**
	 * Anzahl der Fouls, die der Spieler begangen hat.
	 *
	 * @return the fouls
	 */
	public int getFouls();
	
	/**
	 * Inc fouls.
	 */
	public void incFouls();
	
	/**
	 * Reset fouls.
	 */
	public void resetFouls();

	/**
	 * Nachrichten der eigenen Team-Roboter.
	 *
	 * @param sender the sender
	 * @param message the message
	 */
	public void addMessage(Object sender, Object message);
	
	/**
	 * Gets the messages.
	 *
	 * @return the messages
	 */
	public Object[] getMessages();
}
